<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://www.opengis.net/sld"
            xmlns:sld="http://www.opengis.net/sld"
            xmlns:xlink="http://www.w3.org/1999/xlink"
            xmlns:xsd="http://www.w3.org/2001/XMLSchema"
            elementFormDefault="qualified">
  <xsd:import namespace="http://www.w3.org/1999/xlink"
             schemaLocation="../../xlink/1.0.0/xlinks.xsd"/>

<!-- *********************************************************************** -->
  <xsd:annotation>
    <xsd:documentation>
      SLD COMMON ELEMENTS version 0.7.3 (2002-09-21)
    </xsd:documentation>
  </xsd:annotation>

<!-- *********************************************************************** -->
  <xsd:simpleType name="VersionType">
    <xsd:annotation>
      <xsd:documentation>
        The "VersionType" merely restricts the version string that may
        be used with XML documents based on this schema.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="0.7.3"/>
    </xsd:restriction>
  </xsd:simpleType>

<!-- *********************************************************************** -->
  <xsd:element name="Name" type="xsd:string"/>

  <xsd:element name="Description">
    <xsd:annotation>
      <xsd:documentation>
        A "Description" gives human-readable descriptive information for
        the object it is included within.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="Title" type="xsd:string" minOccurs="0"/>
        <xsd:element name="Abstract" type="xsd:string" minOccurs="0"/>
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

<!-- *********************************************************************** -->
  <xsd:element name="FeatureTypeName" type="xsd:string"/>

<!-- *********************************************************************** -->
  <xsd:element name="OnlineResource">
    <xsd:annotation>
      <xsd:documentation>
        An "OnlineResource" is typically used to refer to an HTTP URL.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType>
      <xsd:attributeGroup ref="xlink:simpleLink"/>
    </xsd:complexType>
  </xsd:element>

<!-- *********************************************************************** -->
  <xsd:element name="InlineContent">
    <xsd:annotation>
      <xsd:documentation>
        "InlineContent" is XML- or base64-encoded encoded content in some
        externally-defined format that is included in an SLD in-line.
      </xsd:documentation>
    </xsd:annotation>
    <xsd:complexType mixed="true">
      <xsd:sequence>
        <xsd:any minOccurs="0"/>
      </xsd:sequence>
      <xsd:attribute name="encoding" use="required">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:enumeration value="xml"/>
            <xsd:enumeration value="base64"/>
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:attribute>
    </xsd:complexType>
  </xsd:element>

</xsd:schema>
